<?php
/**
 * Intreface DAO
 *
 * @author: http://phpdao.com
 * @date: 2015-05-26 14:36
 */
interface ClassifiedsDAO{

	/**
	 * Get Domain object by primry key
	 *
	 * @param String $id primary key
	 * @Return Classifieds 
	 */
	public function load($id);

	/**
	 * Get all records from table
	 */
	public function queryAll();
	
	/**
	 * Get all records from table ordered by field
	 * @Param $orderColumn column name
	 */
	public function queryAllOrderBy($orderColumn);
	
	/**
 	 * Delete record from table
 	 * @param classified primary key
 	 */
	public function delete($classified_id);
	
	/**
 	 * Insert record to table
 	 *
 	 * @param Classifieds classified
 	 */
	public function insert($classified);
	
	/**
 	 * Update record in table
 	 *
 	 * @param Classifieds classified
 	 */
	public function update($classified);	

	/**
	 * Delete all rows
	 */
	public function clean();

	public function queryByCategoryId($value);

	public function queryBySubcategoryId($value);

	public function queryByStartDate($value);

	public function queryByDescription($value);

	public function queryByContactDetails($value);

	public function queryByPhoneNumber($value);

	public function queryByMobileNumber($value);

	public function queryByEmail($value);

	public function queryByUserName($value);

	public function queryByClassifiedType($value);

	public function queryByShowMyContact($value);

	public function queryByExpireIn($value);

	public function queryByClassifiedImage($value);

	public function queryByClassifiedUrl($value);

	public function queryByMetaDescription($value);

	public function queryByMetaKeywords($value);

	public function queryByStatus($value);

	public function queryByCreatedDate($value);

	public function queryByUpdatedDate($value);


	public function deleteByCategoryId($value);

	public function deleteBySubcategoryId($value);

	public function deleteByStartDate($value);

	public function deleteByDescription($value);

	public function deleteByContactDetails($value);

	public function deleteByPhoneNumber($value);

	public function deleteByMobileNumber($value);

	public function deleteByEmail($value);

	public function deleteByUserName($value);

	public function deleteByClassifiedType($value);

	public function deleteByShowMyContact($value);

	public function deleteByExpireIn($value);

	public function deleteByClassifiedImage($value);

	public function deleteByClassifiedUrl($value);

	public function deleteByMetaDescription($value);

	public function deleteByMetaKeywords($value);

	public function deleteByStatus($value);

	public function deleteByCreatedDate($value);

	public function deleteByUpdatedDate($value);


}
?>